package com.nacrtstudio.webgiftshop.model.service;

import java.util.List;

import com.nacrtstudio.webgiftshop.core.dao.service.ReadCommand;

public interface Manager<T> {
	public ReadCommand<T> getReadCommand();
	public T getObject();
	public void setObject(T object);
	public void create();
	public List<T> getAll(Class<T> clazz);
	public void update();
	public void delete();
	public List<T> get(Class<T> clazz, T object);
	public void update(T object);
	public T getByPropertyValue(Class<T> searchForType, String property, String value);
	public List<T> getAllByMaxValue(Class<T> class1, String property);
	public T getByPropertyID(Class<T> searchForType, String string, Long productId);
	public List<T> getAllSortedByProperty(Class<T> clazz, String property);
}
